'use strict';


export default () => {
  return async function(ctx, next) {
    // 获取客户端的token
    const clientToken = ctx.getToken()
    // 获取存储的Token
    const catchToken = await ctx.getCatchToken()
    if (clientToken !== catchToken) {
      throw {
        code: 401,
        msg: '当前账号在其他地方登陆，如果不是自己登陆，请联系管理员修改密码'
      }
    }
    const userId = ctx.getUserId()
    ctx.createToken(userId)
    await next();
  };
};
